Pit Contours

Generating contour lines from a surface or planning model

Generate Pit Contours

This Help file is part of a series of topics describing Studio OP's Interactive Pit Design functionality.

To access this dialog:

  • Activate the Design ribbon and select Pit Modelling | Pit Contours.

This panel is used to create smooth contours around a model containing pushback information.

The intention of this function is to minimise the need to manually digitise strings around model sections. These contours can be used in other pit design processes such as the Ramp Layout task, where they can be used as a starting point for creating pit shells for the road tester, or as constraint strings in the Auto Design task.

The second step is to use this surface as a canvas for generating regular contours, with option controls for using spline geometry to ensure the resulting contours are practical (examples are shown below).

Having these as two distinct steps allows the wireframe shell to be inspected, and if necessary, recreated or further processed, before being used to generate the contour strings.

Use this panel in conjunction with the Pit Data control bar. It is recommended that you 'float' the Pit Data bar so that both it and the Pit Contours task are visible at the same time, providing access to the DTM Shells and Shell Contours objects for visibility control and formatting.


As with all managed tasks, updates made on this panel are committed to the Database using the Save (1) or Save and Close (2) buttons at the top of the form.

 

Creating Practical Contours

Automatically generate the bench toe strings for each bench using bench design parameters. Contours may, for example, represent the boundaries formed by the pushback bench toe perimeters. They can either be generated according to fixed elevations from a starting height, or you can use the benches that are already defined within your project (see Define Benches task).

Bench toe strings are clipped to the specified topography (e.g. a phase DTM), potentially resulting in a mixture of open and closed strings:

...after clipping becomes...

It is these strings that can (optionally) be used to influence the design of the final pit shell. These strings (known as "constraint strings") must be closed in order to be used, so in some cases you may need to close open perimeters before they are selected as constraints (see the example for more guidance...)

Depending on the geometry of the original surface or model, the intermediate isosurface may require refinement in order to generate contours that are practical to use as pit design constraints.

Practical/useful contours will be smooth enough to reduce the impact of model block edges (and many unwanted sharp angles) yet still accurately representing appropriate zone boundaries within the planning model. There are various options available on this panel to control how contours are generated, broadly separated into two groups; how the surface is generated in step 1, and how the contours are generated in step 2.

You can achieve smoother contours by first smoothing the generated surface (step 1) and/or apply spline logic to the resulting raw contours (step 2). For example, the image at the top shows a raw wireframe shell representing an isosurface (non-smoothed/subsampled), with its corresponding raw contours (unsplined) contours. The centre image shows the same raw surface with interpolated bezier contours and the bottom image shows a smoothed (x2) and subsampled (x2) surface with raw contours.

In all cases, contours are overlaid onto the generated shell in green:

 

The decision as to whether the surface should be subsampled/smoothed and/or the resulting contour strings will depend on the data that is being surfaced. However you get there, smooth and well-formed contour strings will be more likely to produce an effective pit design than those with high numbers of near-coincident points and/or extreme changes in angles.

 

note.gif (1017 bytes)

Surface data created by this task will be stored within the current project database when the task is saved. 2 objects will be converted to physical files; the pit shell DTM and the contour strings object.

 

 

Field Details:

Pit/Phase: The data comes from the reserves definition in the OP framework. Only pits which currently have a planning model associated with them (Define Planning Model) will be listed for selection. If no valid pits are found, the rest of this form is disabled.

The Phase drop-down list displays all the unique optimized phase values found within the model that is associated with the pit. If more than 500 unique values are found, the Value drop-down list below will display a message indicating that there are too many unique values to list. This information is prepared as part of the Define Phases task (Setup ribbon). If a suitable planning model attribute has not been assigned (either as an "Optimised phase", "Mining Phase" or "LG phase" assignment), the Phase drop-down list will be empty.

There are three methods for generating contours. All involve a two step process that will generate a surface, then contour it.

  • Create the shell isosurface from the specified model based on a planning attribute. If the specified wireframe already exists, its contents will be removed in preparation for the new data. If the specified wireframe does not already exist, a new wireframe object will be created. If no wireframe has been specified, then an error message will be shown.

  • Generate a surface from the string contours data file that is currently associated with the project.

  • Import a wireframe triangles file that represents the surface from which you wish to derive contour strings.

You can find out more about these options below.

 

Data Management with this command

In-memory data that is generated with this task is committed to the project database when you save the task. At this point, either new data files will be created and added to your project, or existing data files will be overwritten. You can store Shell DTM and Shell Contours data independently for every pit and phase combination.

If you swap from one pit or phase to a different one within the current task session, you will be given an opportunity to save your current changes. If shell and/or contour data exists for the newly-selected pit/phase combination, it will be loaded into memory and drawn to the screen (updating the status of the Pit Data control bar items appropriately).

 

Generate Surface options

The following options are available for generating the shell surface (referred to within Studio OP as the Shell DTM).

  • Generate from Model: this option is only displayed if a model has been assigned to the selected pit, and that model has been defined to include either an Optimised phase, Mining Phase or LG phase field, contours are generated from an idealized pit shell wireframe, created using  isosurfaces derived from the model. This option allows a loaded block model to be used to generate the contours. If this option is chosen, an isosurface will be generated using one of the following data scenarios:

    - If phase information has been defined manually (using the Define Phases task, and selecting the Manual option, then defining each phase name that is needed to represent the ultimate pit) - a Value drop-down is provided to allow you to select the key field value for the model that will be used to construct an isosurface. Unique values found in the phase attribute of the planning model are listed in the Value drop-down list. All unique values are found in the assigned data column. As with the above field, you are alerted if more than 500 values are detected.

    - If phase information has been defined automatically (using the Define Phases task, and selecting the Use Model option) - no Value drop-down list is shown as the phase and key field value are already known.

    The wireframe is created around all cells with a Phase/Keyfield value less than or equal to the specified Phase value (Pit specification). The upper surface of the wireframe is automatically removed to leave just the lower pit shell.

    Show top surface: by default, this check box is disabled, meaning a phase shell surface will not be generated over the pit void. If enabled, the phase shell from which contours will be generated will be a closed volume. For example, the upper image below shows a generated phase shell without a surface and the lower image shows a phase shell generated from the same data, but with a surface covering the pit void.



    You may want to use a top surface, for example, to allow design contour constraints to capture the ground details (hills or other features) around the auto-designed pit rim.


    About surface generation

    Isosurface generation is controlled using these additional options:

    • Subsample: isosurfaces are created using a regularly spaced grid of data points. The Subsample value controls how many of these points will be used per model parent cell, in each direction. As noted above, this will be automatically calculated to match the degree of subcelling found in the model. However, larger values for subsampling can result in significantly longer calculation time.

  • If the surface calculation takes too long, it may be worth retrying with a smaller value of Subsample. Values of Subsample which are too big may result in smaller features being missed in the surface generation. This may actually be desirable, as practical pit contours will often deliberately avoid small features in preference to clean, smooth contours lines. Subsamples are limited to the range 1-10.

     

    Selecting a model from either source will attempt to auto calculate the Subsample value in the Generate Surface group. This looks at the minimum cell size in X and Y as a factor of parent cell size, and uses the maximum subdivision for the Subsample value (e.g. if the model has no subcells, Subsample=1. If the model has used 2*3 subcelling, Subsample=3 and so on). This calculation may introduce a small delay when changing between model choices.

  • Smooth: intermediate wireframe shells may be automatically smoothed using the same mechanism as found in the wireframe-smooth command, to help produce smoother contours without resorting to splines. Smoothing passes are limited to the range 1-5. Another option is to use the wireframe-smooth command on the resulting surface after is has been generated and the task saved.

  • Import...: import any previously-created 3D surface from which to generate contours.

  • Generate from Contours: generate contours based on a DTM surface that has been created from previously-defined contour strings. These contour strings must be a part of the Studio OP database (i.e. contours previously generated using the Shell Contours managed task, which has been saved). This approach allows you to recreate a surface based on previous contours, using subsampling and smooth options.

    This option will be disabled if no contour strings are currently associated with the active project.

Generate Bench Contours options

Contours are created from the shell wireframe by calculating, and optionally post-processing, sections through the wireframe at defined elevations.

note.gif (1017 bytes)

contours will be generated from the wireframe specified in the Generate Surface section. Although these would normally have been generated as an earlier step within this command, it’s possible to generate contours from existing wireframes by selecting them in the Generate Surfaces box before performing the final contouring calculation.

 

The following options are available for generating and managing bench contour data:

Benches: this option will use the toe and crest bench elevations defined for the pit selected in the first stage of this command. If no pit has been chosen, or no bench elevations are found associated with that pit, the Benches option will be disabled, and the Fixed Elevations option chosen automatically.

Fixed Elevations: generate contours starting from the Start elevation at intervals specified by the Height value. The Height value must be greater than 0.

Use splines: if this option is enabled, splines can be fitted to the original section contours to potentially produce smoother, more general, curves. This is often a useful way of eliminating unwanted 'jagged edges' and providing a more coherent basis for pit design/constraint.

The following spline options are available:

Presimplify Contours: the generated splines will attempt to use the points on the section contour to constrain spine direction. Having too many input points prevents the splines from having the freedom to produce more general curves. It is a good idea to presimplify the original section lines, so that the contours only have points at significant points in the outline.

The Tolerance value is the maximum distance a simplified line could be away from the original point before that point would still need to be included. The actual value used is subjective, but values near the size of the parent block often produce good results. Tolerance must be greater than 0.

Bezier: produces cubic splines which are usually a good fit, but may not pass through the original points. Points in the spline are concentrated around areas of maximum change.

Interpolated Bezier: produces cubic splines which pass through the original points. Points in the spline are evenly distributed between the input points.

Interpolated Parabolic: produce curves which are formed from blended parabolas of adjacent line segments. This is the same method as used in the smooth-string command, but can result in curves which are at a significant distance from the original line segments. Curves pass through the original points. Points in the curve are evenly distributed between the input points.

Multiple: this option is available regardless of the spline choice (see above) and controls how many points will be used to represent the continuous spline. More points produce a smoother curve but may introduce a performance overhead in downstream processing. The number of points in the spline will be equal to the number of input points multiplied by the Multiple value. Multiple must be a positive integer.

Simplify Contours: contours generated directly from the shell wireframe, or from splines, may have a large number of points. This may introduce a performance overhead in downstream processing, and many of the points may essentially be redundant, for example spaced along an almost straight line.

The Simplify Contours option allows points to be automatically removed where they lie within the Tolerance distance of a simpler straight line representation. Tolerance must be greater than 0.

note.gif (1017 bytes)

Interpolated splines can often produce a lot of points in areas of relatively little curvature, as spline points are evenly distributed between input points. The Simplify Contour option can be used to clean up these results, and only keep points in areas of greatest curvature.

 

Generate: generate a series of contour strings from the wireframe specified in the Generate Surface section, and write them to the strings object specified in the To Strings combo box. If the specified strings object already exists, its contents will be removed in preparation for the new data. If the specified strings object does not already exist, a new strings object will be created. If no strings object has been specified, then an error message will be shown. If the wireframe specified in the Generate Surface section does not yet exist, then an error message will be shown.

Once generated, shell DTM and contour string data is committed to the OP database, and can be subsequently managed using the Pit Data control bar (Shell DTMs and Shell Contours items).

  openbook.gif (910 bytes)   Related Topics

 

Define PhasesDefine Planning ModelOpen Pit Mine Design
Ramp Layout Task
Auto Design Task
wireframe-smoothPit DataPit Design Tutorial